k8s attributes processor
otlp でテレメトリを送る場合、誰が送ったかは自己申告制なので Pod 自身が知り得ない情報を復元してあげる必要がある どうやって?
Kubernetes の API を叩いて Pod を watch し、Pod を識別する情報(IP など) -> Pod のマッピングを持っておく resource attributes で識別可能な場合(k8s.namespace.name と k8s.pod.name がある)ときはそこから引く
無い場合は reveiver が付与してくる client ip の情報から引く
注意点
そのままだと Pod 全てを watch する controller になってしまう
大規模環境だと扱う Pod が多すぎるので分散してあげる必要がある
ただしエージェントなので落ちていることがあり、その場合テレメトリ(典型的にはスパン)が落ちる
Gateway 構成(Deployment)の場合は namespace 単位であったり label でフィルタリングすることができる 各 namespace に Gateway Service を提供するという形になるんだろうか
HNC でテナントみたいなことをやっている場合は事実上は複数の namespace に跨ることになるが……
batch はその性質上 context を切る